<?php

/**
 * LoginForm class.
 * LoginForm is the data structure for keeping
 * user login form data. It is used by the 'login' action of 'SiteController'.
 */
class RemindForm extends CFormModel
{
	public $email;

	public function rules()
	{
		return array(
			array('email', 'required')
		);
	}

	public function attributeLabels()
	{
		return array(
			'email'=>'Email'
		);
	}

	public function remind($th)
	{
		$user = Users::model()->findByAttributes(array('email'=> $this->email));
		if($user === null)
		{
			$this->addError('email','Podanego adresu email nie ma w bazie.');
			return false;
		} else {
			$newPassword = $user->generate_password(8);
			$user->password = $newPassword;
			$user->repeat_password = $user->password;
			if($user->save()) {
				$title = 'Zmiana hasła w Internetowym Systemie Obsługi Laboratorium Laparoskopii';
				$message = 'Dzień dobry,<br />
W systemie obsługi labolatorium laparoskopii dostepnym pod adresem http://156.17.39.107:8083 dokonano procesu zmiany hasła.
<br />Poprawne dane potrzebne do zalogowania to:<br />
<b>Login:</b> '.$user->email.'<br />
<b>Hasło:</b> '.$newPassword. '<br /><br />Po pierwszym logowaniu, hasło najlepiej zmienić na własne w zakładkce -> \'<b>Dane użytkownika</b>\'';
				$contact_email = Yii::app()->mailer->From;
				Yii::app()->mailer->IsHTML(true);
				Yii::app()->mailer->AddAddress($user->email);
				Yii::app()->mailer->Subject = $title;
				Yii::app()->mailer->Body = $th->renderPartial('/calendar/email', array('contact_email' => $contact_email,'message' => $message, 'title' => $title), true);
				Yii::app()->mailer->Send();
				Yii::app()->mailer->ClearAddresses();
				return true;
			} else {
				$this->addError('email','Wystąpił błąd w trakcie zmiany hasła. Skontaktuj się z administratorem.');
				return false;
			}
		}
	}
}
